<?php
declare (strict_types = 1);

namespace app\admin\controller;

use think\exception\ValidateException;
use think\Request;
use app\BaseController;
use app\admin\service\UserService;

class Auth extends BaseController
{
    /**
     * 显示资源列表
     *
     * @return \think\Response
     */
    public function login(): \think\Response
    {
        try {
            $this->validate($this->request->param() , [
                'account'  => 'require',
                'password'   => 'require',
            ] , [
                'account.require' => '账号必须',
                'password.require'     => '密码必须',
            ]);
        }catch (ValidateException $e){
            return errMsg(2004 , $e->getError());
        }

        return app(UserService::class)->login($this->request->param('account') , $this->request->param('password'));
    }

    /**
     * 显示创建资源表单页.
     *
     * @return \think\Response
     */
    public function create()
    {
        //
    }

    /**
     * 保存新建的资源
     *
     * @param  \think\Request  $request
     * @return \think\Response
     */
    public function save(Request $request)
    {
        //
    }

    /**
     * 显示指定的资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function read($id)
    {

    }

    /**
     * 显示编辑资源表单页.
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function edit($id)
    {
        //
    }

    /**
     * 保存更新的资源
     *
     * @param  \think\Request  $request
     * @param  int  $id
     * @return \think\Response
     */
    public function update(Request $request, $id)
    {
    }

    /**
     * 删除指定资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function delete($id)
    {
        //
    }

    public function logout()
    {
        return app(UserService::class)->logout();
    }
}
